package com.magelink.core;

import java.io.Serializable;


import com.magelink.domain.ResultCodeEnum;
import com.magelink.pojo.AppInfo;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;


/**
 * 响应消息
 *
 * @author 梁卓
 */
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class ResponseMsg implements Serializable {
    /**
     * 版本控制
     * 　　 serialVersionUID作用是序列化时保持版本的兼容性，即在版本升级时反序列化仍保持对象的唯一性
     * 序列化时为了保持版本的兼容性，即在版本升级时反序列化仍保持对象的唯一性
     */
    private static final long serialVersionUID = 1L;
    /**
     * 调用结果码。
     */
    private String resultCode;
    /**
     * 调用结果描述。
     */
    private String resultMsg;
    /**
     * 应用实例信息。
     * 客户购买商品后，服务商需要返回登录服务地址（网站地址）或免登地址供客户后续操作。
     * 敏感信息加密算法
     * 1：AES256_CBC_PKCS5Padding（默认值）
     * 2：AES128_CBC_PKCS5Padding
     */
    private String encryptType = "1";
    /**
     * 实例ID，服务商提供的唯一标识。
     */
    private String instanceId;
    /**
     * 应用实例信息。
     * 客户购买商品后，服务商需要返回登录服务地址（网站地址）或免登地址供客户后续操作。
     */
    private AppInfo appInfo;

    public void setResultCode(ResultCodeEnum resultCodeEnum) {
        this.resultCode = resultCodeEnum.getCode();
        this.resultMsg = resultCodeEnum.getLiteral();
    }
}
